"E. Julius" (soonerfrommi)
04/16/2015 at 20:49 • Filed to: Besiege | 3 | 7 |
I've been posting about !!!error: Indecipherable SUB-paragraph formatting!!! in the awesome early access game Besiege . Tonight I gave myself a challenge: fix the game's crummy steering. How you ask? By replicating the !!!error: Indecipherable SUB-paragraph formatting!!! used to turn wheels at different angles to prevent wheel scrubbing. It took about 1.5 hours, but here is the completed prototype.
The stock steering systems in Besiege use a simple setup where both wheels are turned at the same angle. This creates wheel scrubbing, since the wheels are actually moving in circles of two different radii and thus must be pointing in different directions. The Ackerman geometry was invented to solve this wheel slipping problem with horse drawn carriages in the early 19th century.
In addition to approximating the Ackerman geometry, I also wanted to give the vehicle precise, continuous steering control. None of the controllable parts in Besiege have variable inputs—they're either on or off—so precise steering is difficult. To solve both of these problems, I decided to assemble some existing components into a more complex device.
As you may be able to discern in the picture above, I used the small steering block as a motor and gear of sorts, and created a makeshift rack to turn this into a rack and pinion setup with a static rack and moving pinion. The pinion is attached to an arm which moves along sliders, which attaches to a center link rod (not visible in the picture above). The tie rods extend from the ends of the center link to the steering hinges. I was then able to use additional hinge components to create the necessary points of articulation to achieve a setup similar to the Ackerman geometry. The tie rods, the shortest of the dark gray bars, are visible in the photo below.
The buildings tools in Besiege aren't precise enough to create a true Ackerman geometry, but this approximation worked well enough. You can see in the screenshot below that the inside wheel is turned at a greater angle, corresponding to the circle of smaller radius that it traces in the turn.
This is my first attempt at this design, so there are definitely improvements to be made, but overall I'm pretty happy with it. I'm hoping to package the system more efficiently in the next iteration, and beef up the components' strength so I can create a higher performance vehicle. Besiege race car anyone? Check out the Ackerman's awesome maneuverability in the gif below. It's a bit sped up, but in real play the steering is precisely controllable and doesn't move quite so quickly.
TheHondaBro
> E. Julius
04/16/2015 at 20:51 | 2 |
Nice. I did something where the front wheels were on pistons, so I could raise the front-end and aim my cannons.
E. Julius
> TheHondaBro
04/16/2015 at 20:52 | 0 |
That's an awesome idea!
Frank Grimes
> E. Julius
04/16/2015 at 21:05 | 1 |
i want this game.
E. Julius
> Frank Grimes
04/16/2015 at 21:08 | 1 |
It's great. I picked it up for less than $10 and it doesn't need a very fast computer to run it.
BaconSandwich is tasty.
> E. Julius
04/16/2015 at 21:25 | 1 |
Now here's an idea - what if you were to do a layout more like a diamond, with the front and rear wheel doing the turning?
E. Julius
> BaconSandwich is tasty.
04/16/2015 at 21:28 | 0 |
That would certainly be possible, and really wouldn't take much more work to achieve. Now that I've got this basic proof of concept down I'll be incorporating the idea into other designs, probably including something like that.
TheHondaBro
> BaconSandwich is tasty.
04/16/2015 at 21:28 | 0 |
Then you'd be crabbing, not turning. Crabbing is super annoying in this game.